//
//  UIView+CLCategory.h
//  CLBrowser
//
//  Created by 梁慧聪 on 2021/7/10.
//

#import <UIKit/UIKit.h>

NS_ASSUME_NONNULL_BEGIN

@interface UIView (CLCategory)
/**
 按钮的圆角设置
 
 @param corners UIRectCorner要切除的圆角
 @param cornerRadius 圆角半径
 */
- (void)cl_setPartRoundCorners:(UIRectCorner)corners cornerRadius:(float)cornerRadius;

- (void)cl_setPartRoundCorners:(UIRectCorner)corners cornerRadius:(float)cornerRadius atSize:(CGSize)size;

/// 添加圆角view（不会触发离屏渲染，使用CAShapeLayer图层实现，layer会随view变化而变化，多次调用不会重复添加图层）
- (CAShapeLayer * _Nonnull)cl_addRoundedCorners:(UIRectCorner)corners withRadii:(CGSize)radii color:(UIColor * _Nonnull)color;

/// 添加渐变layer（layer大小会随view变化而变化，没有去重，避免重复添加）
/// 添加渐变layer（layer大小会随view变化而变化，没有去重，避免重复添加）
- (void)cl_addSameSizeGradientLayer:(NSArray * _Nonnull)colors
                          locations:(NSArray * _Nonnull)locations
                         startPoint:(CGPoint)startPoint
                           endPoint:(CGPoint)endPoint
                       cornerRadius:(CGFloat)cornerRadius;

/// 添加layer（layer大小会随view变化而变化，没有去重，避免重复添加）
- (void)cl_addSameSizeLayer:(CALayer * _Nonnull)layer;

/// 加线
- (UIView *)cl_addBottomSeparatorLineWithColor:(UIColor *)color height:(CGFloat)height;
- (UIView *)cl_addBottomSeparatorLineWithColor:(UIColor *)color height:(CGFloat)height leftMargin:(CGFloat)leftMargin rightMargin:(CGFloat)rightMargin bottomMargin:(CGFloat)bottomMargin;
@end

NS_ASSUME_NONNULL_END
